In Voice over Internet Protocol (VoIP) systems, a user device can regularly register with network servers to access VoIP services. These registration requests are usually processed by edge devices that provide authenticated access to the network servers.
Extreme network traffic load, such as a registration storm, occurs when edge devices receive a large number of requests to register with network servers in a short period of time. A registration storm can be triggered by a large-scale power failure, for example. Upon restoration of power, all user devices affected by the outage can try to register with the network servers at once, resulting in a flood of requests that are processed by the edge devices.
An edge device's ability to limit or filter the network traffic entering a service network can reduce network traffic loads caused by such outages. In addition, an edge device needs to be able to handle a registration storm in a reasonable time and in a manner that optimizes resource utilization.
In general, if a connectionless transport protocol, such as the User Datagram Protocol (UDP), is used between an edge device and a user device, the edge device can detect a failure state of the user device if the edge device does not receive a register refresh message from the user device within a certain time period. However, in certain instances, the duration of an interruptive event, such as a power outage, can be sufficiently short in comparison to the time period such that the failure state of the user device cannot be detected by the edge device in a timely fashion.
In addition, after recovery from an interruptive event, a user device can send its registration request to a different edge device than the edge device to which it sent its request before the event. Hence, the edge device that receives the registration request after the restart of the user device may not know that another edge device in the cluster has already registered the user device. This can occur when a user device is configured with a Fully Qualified Domain Name (FQDN) that is associated with a cluster of edge devices. After the user device restarts, the Domain Name System (DNS) server applies a round-robin algorithm to assign an edge device in the cluster to handle the registration request of the user device, thus ignoring the registration status of the user device in the previous boot cycle. This can also occur if the DNS server responds to a registration request with the address of the least-loaded edge device in the cluster or selects an edge device using another type of load-balancing scheme.
Handling overlapping user device registrations restrains an edge device's ability to process new registration requests timely because the edge device may not have sufficient capacity to accommodate stale registrations as well as new registrations from a large number of user devices during a registration storm. Even though capacity in a cluster of edge devices eventually becomes available, many user devices need to wait for an extended period of time, often several minutes, for stale registrations to time out, thereby freeing available capacity on edge devices before additional user devices can be registered.